\documentclass{beamer}
\usepackage[portuguese]{babel}
\usetheme{Copenhagen}
\usepackage[utf8x]{inputenc}
\usepackage{default}
\begin{document}
	\title[Robust Encryption]{Robust Encryption}
	\subtitle[]{Adaptação para modo RSA-OAEP e Cramer-Shoup}
	\author[F.Coelho \and I.Carrajola]{Fábio Coelho \and Ivo Carrajola}
	\institute[UMinho]{
	Projecto Integrado\\
	Criptografia e Segurança de Sistemas de Informação\\
	Universidade do Minho
	\newline
	\texttt{pg18776, pg21029}
}
	\begin{frame}
		\titlepage
	\end{frame}
	  
	\begin{frame}{Objectivos}
		\begin{itemize}
			\item Motivação Principal
			\item Transformadas \emph{Weak} e \emph{Strong Robustness}
			\item Assumpções de Segurança
			\item RSA - modo OAEP
			\item Conclusão
		\end{itemize}
	\end{frame}
	  
	\begin{frame}{Motivação}
		\begin{center}
			\includegraphics[keepaspectratio = true, scale=5]{design0.png}\\
		\end{center}
		Será que o criptograma foi gerado com a chave de cifra respectiva?
		\begin{Proof}[Robustness]
			Dificuldade de produzir um criptograma que seja válido para duas chaves de cifra
		\end{Proof}

	\end{frame}

	\begin{frame}{Weak Robustness}
		\begin{definition}[Garantias]
			\begin{itemize}
			  \item Caso a chave de cifra não estiver correcta, garante que ocorre erro. 
			  
			\end{itemize}
		\end{definition}
		\begin{center}
			\includegraphics[keepaspectratio = true, scale=4]{design.png}\\
		\end{center}
	\end{frame}

	\begin{frame}{Strong Robustness}
		\begin{definition}[Garantias]
			\begin{itemize}
			  \item Caso a identidade da chave de cifra não estiver correcta, garante que ocorre erro. 
			  \item Caso retorne um texto limpo, garante que foi cifrado com a chave correcta.
			\end{itemize}
		\end{definition}
		\begin{center}
			\includegraphics[keepaspectratio = true, scale=4]{design2.png}\\
		\end{center}
	\end{frame}

	\begin{frame}{Assumpções de Segurança}
		\begin{center}
			\begin{table}
				\begin{tabular}{rlllll}
					& & & \multicolumn{2}{c}{Logaritmo Discreto} \\
					Data &  Simétrica & Assimétrica & Chave\hspace{12pt} & Grupo & Hash \\ 
					2011-2030 & 112 & 2048 & 224 & 2048 & SHA256 \\
					$>$ \bf{2030} & \bf{128} & \bf{3072} & \bf{256} & \bf{3072} & \bf{SHA256} \\
					$>>$ 2030   & 192 & 7680 & 384 & 7680 & SHA384 \\
				\end{tabular}
				\caption[Referência de Segurança]{Referência de Segurança -NIST (valores em \texttt{bits})}
				\label{tab:seg}
			\end{table}
		\end{center}
		\begin{definition}
			\centering
			Considerou-se o nível de \bf{128} bit de segurança.
		\end{definition}
	\end{frame}

	\begin{frame}{RSA}
		\begin{definition}[Esquema de Encriptação]
			\begin{itemize}
			 \item Geração de Parâmetros
			 \item Geração de Chaves
			 \item \textbf{Commitment Scheme}
			 \item Encriptação
			 \item Desencriptação
			\end{itemize}
		\end{definition}
		\begin{definition}[Consideração de Segurança]
		Algoritmo RSA com módulo de 3072 bit, satisfaz os \textbf{128bit} de nível de segurança.
		\end{definition}		
	\end{frame}

	\begin{frame}{RSA - Geração de Chaves}
		A geração de chaves foi baseada na especificação do IEEE para standarts criptográficos de onde se destaca:
		\begin{definition}[Dimensão de Geradores]
			\begin{itemize}
			 \item Primos de 1900bit e 1172 bit
			 \item Chaves na forma (n,e) e (n,d)
			\end{itemize}
		\end{definition}
	\end{frame}

	\begin{frame}{RSA - Modo OAEP e Commitment}
		Usado uma vez que já implementa \emph{Weak Robustness}. Condição essencial para a \emph{Strong Robustness}
		\begin{definition}[Modo OAEP]
			\begin{itemize}
			 \item Módulo de 3072bit
			 \item MGF (Mask Generation Function)
			 \item Função de Hash SHA256
			\end{itemize}
		\end{definition}
		\begin{definition}[Commitment]
			Um esquema de \emph{Commitment} serve para vincular uma identidade a um valor.
			E.g. Vincula um Criptograma a uma determinada chave.
			\centering
			\newline
			\emph{Pedersen Commitment Scheme}
		\end{definition}

	\end{frame}

	\begin{frame}{Cramer-Shoup}
		\begin{definition}
			\begin{itemize}
				\item Criptografia Assimétrica
				\item Baseado no \emph{El Gamal}
				\item Escolha de um Grupo Cíclico $\mathbb{G}$ de ordem p (3072bit)
				\item Segurança baseada na Família de Funções de Hash
				\item Utilização de elementos aleatório de $\mathbb{Z}_p$ face a um comitment
				\item Ja especificado no paper
			\end{itemize}

		\end{definition}

	\end{frame}


	\begin{frame}{Conclusão}
		\begin{itemize}
		 \item O conceito de \emph{commitment} assemelha-se a uma assinatura, mas:
			\begin{itemize}
				\item Não garante Não-Repúdio relativamente à identidade
				\item Não necessita de uma chave privada para criar assinatura
			\end{itemize}
		\item O aumento de \emph{Robustez} é conseguido através da redução do espaço da mensagem e introdução do \emph{commitment}
		\item Ao usar uma transformada deste género garante-se que apenas uma chave consegue validar o criptograma
		\end{itemize}
	\end{frame}

	\begin{frame}{Questões}
	      \begin{center}
		    \huge{Obrigado pela atenção}\\
		    Questões?\\
	      \end{center}

	      
	\end{frame}


\end{document}
